/*
* Copyright 2006-2007 Javector Software LLC
*
* Licensed under the GNU General Public License, Version 2 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
*      http://www.gnu.org/copyleft/gpl.html
*
* THE SOURCE CODE AND ACCOMPANYING FILES ARE PROVIDED WITHOUT ANY WARRANTY,
* WRITTEN OR IMPLIED.
*
* The copyright holder provides this software under other licenses for those
* wishing to include it with products or systems not licensed under the GPL.
* Contact licenses@javector.com for more information.
*/
package com.javector.soaj.provider.processing;

import com.javector.soaj.SoajRuntimeException;

public class FlowInterpreter {
  
  public RequestOperation selectOperation(WSRequest wsRequest) {
    
    if( wsRequest.isServiceRequest()){
      return new ServiceRequestOperationImpl(wsRequest);
    }else if(wsRequest.isWSDLRequest()){
      return new WsdlRequestOperationImpl(wsRequest);
    }else{
      throw new SoajRuntimeException("cannot determine the operation for the request");
      
    }
  }
  
}
